dashboard: 'Cluster health'
priority: 1
panel_groups:
- group: Cluster Health
  panels:
  - title: "CPU Usage"
    type: "area-chart"
    y_label: "CPU (cores)"
    metrics:
      - id: cluster_health_cpu_usage
        query_range: 'avg(sum(rate(container_cpu_usage_seconds_total{id="/"}[15m])) by (job)) without (job)'
        unit: cores
        label: Usage (cores)
      - id: cluster_health_cpu_requested
        query_range: 'sum(kube_pod_container_resource_requests_cpu_cores{kubernetes_namespace="gitlab-managed-apps"})'
        unit: cores
        label: Requested (cores)
      - id: cluster_health_cpu_capacity
        query_range: 'sum(kube_node_status_capacity_cpu_cores{kubernetes_namespace="gitlab-managed-apps"})'
        unit: cores
        label: Capacity (cores)
  - title: "Memory Usage"
    type: "area-chart"
    y_label: "Memory (GiB)"
    metrics:
      - id: cluster_health_memory_usage
        query_range: 'avg(sum(container_memory_usage_bytes{id="/"}) by (job)) without (job) / 2^30'
        unit: GiB
        label: Usage (GiB)
      - id: cluster_health_memory_requested
        query_range: 'sum(kube_pod_container_resource_requests_memory_bytes{kubernetes_namespace="gitlab-managed-apps"})/2^30'
        unit: GiB
        label: Requested (GiB)
      - id: cluster_health_memory_capacity
        query_range: 'sum(kube_node_status_capacity_memory_bytes{kubernetes_namespace="gitlab-managed-apps"})/2^30'
        unit: GiB
        label: Capacity (GiB)
